import java.awt.Rectangle;
import java.io.Serializable;

public class SelecaoNEste implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 5922618507693100491L;

	private Rectangle retanguloNEste;

	private SelecaoTipo selecaoTipo = SelecaoTipo.NESTE;

	private Retangulo retanguloEnvolvente;

	private Identificador identificador;

	public Identificador getIdentificador() {
		return identificador;
	}

	public void setIdentificador(Identificador identificador) {
		this.identificador = identificador;
	}

	public SelecaoNEste(Identificador identificador,
			Retangulo retanguloEnvolvente) {
		this.retanguloEnvolvente = retanguloEnvolvente;
		this.identificador = identificador;
		construirRetangulo();
	}

	public void construirRetangulo() {

		retanguloNEste = new Rectangle(this.retanguloEnvolvente
				.getPontoSuperiorEsquerdo().getX()
				+ this.retanguloEnvolvente.getTamanho().getAltura() - 8,
				this.retanguloEnvolvente.getPontoSuperiorEsquerdo().getY(), 8,
				8);
	}

	public boolean contem(Coordenada coordenada) {
		return (coordenada.getX() >= retanguloNEste.x
				&& coordenada.getX() <= retanguloNEste.x + 8
				&& coordenada.getY() >= retanguloNEste.y && coordenada.getY() <= retanguloNEste.y + 8);
	}

	public Rectangle getDesenhar() {
		return retanguloNEste;

	}

	public SelecaoTipo getSelecaoTipo() {
		return selecaoTipo;
	}

	public void setSelecaoTipo(SelecaoTipo selecaoTipo) {
		this.selecaoTipo = selecaoTipo;
	}

}